//引入gizp压缩插件
const CompressionWebpackPlugin = require("compression-webpack-plugin")

module.exports = {
  lintOnSave: false, //是否在开发环境下每次保存代码时都启用 eslint验证。
  publicPath: '/admin', //设置访问url前缀，还需要在router里的base属性设置一样的前缀。
  productionSourceMap: false, //打包时是否生成.map文件。

  //配置dev环境代理，用于跨域请求
  devServer: {
    proxy: { //可以配置多个不同前缀的代理转发，用逗号分隔，参考我的first-vue-demo项目里的config/index.js配置文件
      [process.env.VUE_APP_DEV_BASHURL]: {
        target:'https://keeperhuashengke.picp.net',
        changeOrigin:true,
        pathRewrite:{
          ['^'+process.env.VUE_APP_DEV_BASHURL]:''
        }
      }
    }
  },

  
  //webpack相关配置
  configureWebpack: config => {

      //============gzip压缩配置============
      //匹配此 {RegExp} 的资源
      const productionGzipExtensions = /\.(js|css|json|txt|html|ico|svg)(\?.*)?$/i
      config.plugins.push(
        new CompressionWebpackPlugin({
          filename: "[path][base].gz", // 压缩后的文件名(保持原文件名，后缀加.gz)
          algorithm: "gzip",			  // 使用gzip压缩
          test: productionGzipExtensions, //处理所有匹配此 {RegExp} 的资源
          threshold: 10240,			  // 对超过10k的文件压缩
          minRatio: 0.8			      // 压缩率小于0.8才会压缩
        })
      )
  }

  
}
